#ifndef FILELOGGER_H_
#define FILELOGGER_H_

#include "util/logger/Logger.h"
#include <string>

namespace util {

class FileLogger: public Logger {
public:
	/*
	 * Constructor.
	 */
	FileLogger(std::string logFileName, std::string errorFileName);
	/*
	 * Destructor.
	 */
	virtual ~FileLogger();
	/*
	 * Loguea en el archivo de errores el mensaje.
	 */
	virtual void error(std::string message);
	/*
	 * Loguea en el archivo de errores el warning.
	 */
	virtual void warn(std::string message);
	/*
	 * Loguea en consola la informacion.
	 */
	virtual void info(std::string message);
private:
	FILE * logOutput;
	FILE * errorOutput;
	void toFile(std::string message, std::string type, FILE* output);
};
}

#endif /* FILELOGGER_H_ */
